/*
 *  Constants.h
 *  Return Of The Lemi
 *
 *  Created by Paul Vishayanuroj on 11/9/09.
 *  Copyright 2009 Cornell University. All rights reserved.
 *
 */

// Animation related

#define CONST_FRAME_RATE 60.0f

#define CONST_FRAME_SIZE 128
#define CONST_NUM_FRAMES_PER_SIDE 8

#define CONST_LEMUR_NUM_WALK_FRAMES 14
#define CONST_LEMUR_NUM_SPIN_FRAMES 4
#define CONST_LEMUR_NUM_ATTACK_FRAMES 7

#define CONST_LEMUR_WALK_ANIMATION_DELAY 0.05f
#define CONST_LEMUR_SPIN_ANIMATION_DELAY 0.07f
#define CONST_LEMUR_THROW_ANIMATION_DELAY 0.05f

// This is the offset from the position of the sprite to each of the edges
// Used for detecting touches on the player
#define CONST_LEMUR_CENTER_TO_EDGE_X 20
#define CONST_LEMUR_CENTER_TO_EDGE_Y 40

// The size of the lemur's bounding box from the lower left corner
// Used for detecting touches on the player
#define CONST_LEMUR_WIDTH 40
#define CONST_LEMUR_LENGTH 70

// Lemur start position
#define CONST_PLAYER_START_X 240
#define CONST_PLAYER_START_Y 108

// Lemur walk speed
#define CONST_LEMUR_WALK_SPEED 2

// Maximum amount of kumquats lemur can hold
#define CONST_MAX_AMMO 20

// Kumquat related
#define CONST_KUMQUAT_LIFETIME 8 // how long the kumquat lasts, each tick is 0.5 seconds
#define CONST_KUMQUAT_DRAG_DIST 50 // how far the player must drag to fire a kumquat
#define CONST_KUMQUAT_LAUNCH_FORWARD_X -10 // x-offset relative to player facing right 
#define CONST_KUMQUAT_LAUNCH_FORWARD_Y 40 // y-offset relative to player facing right
#define CONST_KUMQUAT_LAUNCH_BACKWARD_X 15 // x-offset relative to player facing left
#define CONST_KUMQUAT_LAUNCH_BACKWARD_Y 40 // y-offset relative to player facing left
#define CONST_KUMQUAT_SCALE 0.5f 
#define CONST_KUMQUAT_MASS 50.0f
#define CONST_KUMQUAT_RADIUS 7.0f
#define CONST_KUMQUAT_ANG_VEL 10.0f
#define CONST_KUMQUAT_VELOCITY 300.0f // initial velocity

// Enemy Constants
#define CONST_MEERKAT_NUM_ATTACK_FRAMES 8
#define CONST_MEERKAT_THROW_ANIMATION_DELAY 0.06f
#define CONST_MEERKAT_SCALE 0.75f 
#define CONST_MEERKAT_X_CENTER_OFFSET -7 // This is because the image in the spritesheet is not exactly centered
#define CONST_MEERKAT_ATTACK_COOLDOWN 20
#define CONST_MEERKAT_ATTACK_RANGE 150

#define CONST_PEBBLE_SCALE 0.3f
#define CONST_PEBBLE_MASS 50.0f
#define CONST_PEBBLE_RADIUS 5.0f
#define CONST_PEBBLE_ANG_VEL 10.0f
#define CONST_PEBBLE_VELOCITY 300.0f


